$().ready( function() {

    jQuery.validator.addMethod("dateITA", function(value, element) {
        var check = false;
        var re = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
        if( re.test(value)){
            var adata = value.split('/');
            var gg = parseInt(adata[0],10);
            var mm = parseInt(adata[1],10);
            var aaaa = parseInt(adata[2],10);
            var xdata = new Date(aaaa,mm-1,gg);
            if ( ( xdata.getFullYear() == aaaa )
                && ( xdata.getMonth () == mm - 1 )
                && ( xdata.getDate() == gg ) )
                check = true;
            else
                check = false;
        } else
            check = false;
        return this.optional(element) || check;
    }
    );
    
    jQuery.validator.addMethod( "validDateFrom", function(value) {
        //tomo las horas y los minutos
        var hora_inicio = $('#AnotationStartHour').val();
        var hora_fin = $('#AnotationFinishHour').val();
        var minuto_inicio = $('#AnotationStartMinute').val();
        var minuto_fin = $('#AnotationFinishMinute').val();

        if(minuto_inicio < 10){
            minuto_inicio = '0'+minuto_inicio;
        }
        if(minuto_fin < 10){
            minuto_fin = '0'+minuto_fin;
        }

        var inicio = hora_inicio+''+minuto_inicio;
        var fin = hora_fin+''+minuto_fin;

        if(parseFloat(inicio) >= parseFloat(fin)){
            return false;
        }
        return true;
    });


    $("#AnotationPorDiaForm").validate( {
        rules: {
            "data[Anotation][description]": {
                required: true
            },
            "data[Anotation][date_from]": {
                required: true,
                dateITA: true,
                validDateFrom: true
            }
        },
        messages: {
            "data[Anotation][description]": {
                required: "<?php __('Ingrese la descripción') ?>"
            },
            "data[Anotation][date_from]": {
                required: "<?php __('Ingrese la fecha de inicio') ?>",
                dateITA: "<?php __('Ingrese una fecha válida') ?>",
                validDateFrom: "<?php __('El horario de fin debe ser mayor que el de inicio') ?>"
            }
        }

    } );
} );